{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "nbsphinx": "hidden"
   },
   "source": [
    "# Random Signals\n",
    "\n",
    "*This jupyter notebook is part of a [collection of notebooks](../index.ipynb) on various topics of Digital Signal Processing. Please direct questions and suggestions to [Sascha.Spors@uni-rostock.de](mailto:Sascha.Spors@uni-rostock.de).*"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Cumulative Distribution Functions\n",
    "\n",
    "A random process can be characterized by the statistical properties of its amplitude values. [Cumulative distribution functions](https://en.wikipedia.org/wiki/Cumulative_distribution_function) (CDFs) are one possibility to do so."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Univariate Cumulative Distribution Function\n",
    "\n",
    "The univariate CDF $P_x(\\theta, k)$ of a continuous-amplitude real-valued random signal $x[k]$ is defined as\n",
    "\n",
    "\\begin{equation}\n",
    "P_x(\\theta, k) := \\Pr \\{ x[k] \\leq \\theta\\},\n",
    "\\end{equation}\n",
    "\n",
    "where the operator $\\Pr \\{ \\cdot \\}$ denotes the probability that the given condition holds. The univariate CDF quantifies the probability that for the entire ensemble and for a fixed time index $k$ the amplitude $x[k]$ is smaller or equal to $\\theta$. The term **univariate** reflects the fact that only a single random process is considered.\n",
    "\n",
    "The CDF exhibits the following properties which can be concluded directly from its definition\n",
    "\n",
    "\\begin{equation}\n",
    "\\lim_{\\theta \\to -\\infty} P_x(\\theta, k) = 0\n",
    "\\end{equation}\n",
    "\n",
    "and\n",
    "\n",
    "\\begin{equation}\n",
    "\\lim_{\\theta \\to +\\infty} P_x(\\theta, k) = 1.\n",
    "\\end{equation}\n",
    "\n",
    "The former property stems from the fact that all amplitude values $x[k]$ are larger than $- \\infty$, the latter from the fact that all amplitude values lie within $- \\infty$ and $\\infty$. The univariate CDF $P_x(\\theta, k)$ is furthermore a non-decreasing function\n",
    "\n",
    "\\begin{equation}\n",
    "P_x(\\theta_1, k) \\leq  P_x(\\theta_2, k) \\quad \\text{for } \\theta_1 \\leq \\theta_2.\n",
    "\\end{equation}\n",
    "\n",
    "The probability that $\\theta_1 < x[k] \\leq \\theta_2$ is given as\n",
    "\n",
    "\\begin{equation}\n",
    "\\Pr \\{\\theta_1 < x[k] \\leq \\theta_2\\} = P_x(\\theta_2, k) - P_x(\\theta_1, k).\n",
    "\\end{equation}\n",
    "\n",
    "Hence, the probability that a continuous-amplitude random signal takes exactly a specific value $x[k]=\\theta$ is zero when calculated by means of the CDF. This motivates the definition of probability density functions (PDFs) introduced later."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Bivariate Cumulative Distribution Function\n",
    "\n",
    "The term **bivariate** reflects the fact that two random processes are considered. \n",
    "The statistical dependencies between two signals drawn from two processes are frequently of interest in statistical signal processing. The bivariate or joint CDF $P_{xy}(\\theta_x, \\theta_y, k_x, k_y)$ of two continuous-amplitude real-valued random signals $x[k]$ and $y[k]$ is defined as\n",
    "\n",
    "\\begin{equation}\n",
    "P_{xy}(\\theta_x, \\theta_y, k_x, k_y) := \\Pr \\{ x[k_x] \\leq \\theta_x  \\wedge y[k_y] \\leq \\theta_y  \\}.\n",
    "\\end{equation}\n",
    "\n",
    "The joint CDF quantifies the probability for the entire ensemble of sample functions that for a fixed $k_x$ the amplitude value $x[k_x]$ is smaller or equal to $\\theta_x$ and that for a fixed $k_y$ the amplitude value $y[k_y]$ is smaller or equal to $\\theta_y$. The following properties can be concluded from its definition\n",
    "\n",
    "\\begin{align}\n",
    "\\lim_{\\theta_x \\to -\\infty} P_{xy}(\\theta_x, \\theta_y, k_x, k_y) &= 0 \\\\\n",
    "\\lim_{\\theta_y \\to -\\infty} P_{xy}(\\theta_x, \\theta_y, k_x, k_y) &= 0\n",
    "\\end{align}\n",
    "\n",
    "and\n",
    "\n",
    "\\begin{equation}\n",
    "\\lim_{\\substack{\\theta_x \\to +\\infty \\\\ \\theta_y \\to +\\infty}} P_{xy}(\\theta_x, \\theta_y, k_x, k_y) = 1.\n",
    "\\end{equation}\n",
    "\n",
    "The bivariate CDF can also be used to characterize the statistical properties of one random signal $x[k]$ at two different time-instants $k_x$ and $k_y$ by setting $y[k] = x[k]$\n",
    "\n",
    "\\begin{equation}\n",
    "P_{xx}(\\theta_1, \\theta_2, k_1, k_2) := \\Pr \\{ x[k_1] \\leq \\theta_1  \\wedge x[k_2] \\leq \\theta_2  \\}.\n",
    "\\end{equation}\n",
    "\n",
    "The definition of the bivariate CDF can be extended straightforward to the case of more than two random variables. The resulting CDF is then referred to as multivariate CDF."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Probability Density Functions\n",
    "\n",
    "[Probability density functions](https://en.wikipedia.org/wiki/Probability_density_function) (PDFs) describe the probability for one or multiple random signals to take a specific range of values, in the limit only one value. Again the univariate case is discussed first."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Univariate Probability Density Function\n",
    "\n",
    "The univariate PDF $p_x(\\theta, k)$ of a continuous-amplitude real-valued random signal $x[k]$ is defined as the derivative of the univariate CDF\n",
    "\n",
    "\\begin{equation}\n",
    "p_x(\\theta, k) := \\frac{\\partial}{\\partial \\theta} P_x(\\theta, k).\n",
    "\\end{equation}\n",
    "\n",
    "This can be seen as the differential equivalent of the limit case $\\lim_{\\theta_2 \\to \\theta_1} \\Pr \\{\\theta_1 < x[k] \\leq \\theta_2\\}$. As a consequence of above definition, the CDF can be computed from the PDF by integration\n",
    "\n",
    "\\begin{equation}\n",
    "P_x(\\theta, k) = \\int\\limits_{-\\infty}^{\\theta} p_x(\\alpha, k) \\, \\mathrm{d}\\alpha.\n",
    "\\end{equation}\n",
    "\n",
    "\n",
    "Due to the properties of the CDF and its definition, the PDF shows the following properties\n",
    "\n",
    "\\begin{equation}\n",
    "p_x(\\theta, k) \\geq 0\n",
    "\\end{equation}\n",
    "\n",
    "and\n",
    "\n",
    "\\begin{equation}\n",
    "\\int\\limits_{-\\infty}^{\\infty} p_x(\\theta, k) \\, \\mathrm{d}\\theta = \\lim_{\\theta \\to \\infty} P_x(\\theta, k) = 1.\n",
    "\\end{equation}\n",
    "\n",
    "The univariate PDF has only positive values and the area below the PDF is equal to one. The latter property may be used for normalization of histograms."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Example - Estimate of an univariate PDF by the histogram\n",
    "\n",
    "In the process of calculating a [histogram](https://en.wikipedia.org/wiki/Histogram), the entire range of amplitude values of a random signal is split into a series of intervals (bins). For a given random signal the number of samples is counted which fall into one of these intervals. This is repeated for all intervals. The counts are finally normalized with respect to the total number of samples. This process constitutes a simple, sometimes not robust, numerical estimate of the PDF of a random process.\n",
    "\n",
    "In the following example the histogram of an ensemble of random signals is computed for each time index $k$. The CDF is computed by taking the cumulative sum over the histogram bins. This constitutes a numerical approximation of above integral\n",
    "\n",
    "\\begin{equation}\n",
    "\\int\\limits_{-\\infty}^{\\theta} p_x(\\alpha, k) \\, \\mathrm{d}\\alpha \\approx \\sum_{i=0}^{N} p_x(\\theta_i, k) \\, \\Delta\\theta_i\n",
    "\\end{equation}\n",
    "\n",
    "where $p_x(\\theta_i, k)$ denotes the $i$-th bin of the histogram and $\\Delta\\theta_i$ its width."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAxMAAAInCAYAAADjxgRfAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB4WElEQVR4nO3deXhcZd3/8c+ZJDPZ0yVt2tKVvVAK2Kq07C4FFOQBH34oUAoWBUsRqKhUVEpFKqtFkQrIw+IjgpeC6AMCVXbL1tJKEUWWQkubkq7ZmmS28/ujNhC6ZuaTZqZ5v65rrjaTyXfuM2fOOXPPfX/vbxCGYSgAAAAA6KRIdzcAAAAAQH6iMwEAAAAgI3QmAAAAAGSEzgQAAACAjNCZAAAAAJAROhMAAAAAMkJnAgAAAEBG6EwAAAAAyAidCQAAAAAZoTMBAAAAICN0JgAAO8Vbb72lsrIyHXHEEQrDsLubAwAwoDMBAOhyYRjqK1/5ii6++GI1Nzfrpptu6u4mAQAMgpCvhwAAXezGG2/Un/70Jz322GNasmSJjjjiCD3zzDPafffdu7tpAIAsMDIBoMvdeeedCoJgq7cnn3xyh2PNmzdPM2bM0Pr167f4HO+884617dm0yWHGjBkKgmC7j/voa1xYWKjBgwfr7LPP1vLly7f6uOLiYg0YMEBHH320Zs2apbq6uu3G/vDtkksu2aHtuPDCC/WXv/xFkUhEe+yxh5YvX55RR2LmzJnab7/9lE6nO9zf0NCgSy65REOGDFFxcbE+8YlP6Lnnnut0/Pr6ekUiEc2ePXurj7n99tu12267qbm5udPxAWBXU9jdDQDQc9xxxx3ad999N7t/v/322+EY8+bN0xVXXKGzzjpLvXr1ar//85//vJ577jkNHDjQ0dRO2VqbusOm17ilpUVPP/20Zs2apaeeekqLFy9WWVnZZo9LJBKqq6vTs88+q6uvvlrXXXed7rvvPn3mM5/ZauwPGzRoUJdv0yYrVqzQNddcozvvvFORyAffha1evVpHH320iouLNXv2bJWWlup73/uejj/+eL355pvq3bv3Dj/H/PnzFYahPv7xj2/1MZMmTdLVV1+ta665RldccUVW2wQA+Y7OBICdZtSoURo7dmyXxO7Xr5/69evXJbHzyYdf46OPPlqpVEo//OEP9Yc//EGnn376Fh8nSV/84hd18cUX67DDDtPJJ5+sN954QzU1NVuN3R1uvPFG9erVSyeffHKH+8866yyFYainnnpKpaWlkqTq6mp94hOf0IMPPqizzjprh59j/vz5Kiws1Mc+9rGtPqawsFDnnnuufvjDH+o73/lO+3MCQE/ENCcAOWPVqlX62te+piFDhigWi6lfv3469NBD9Ze//EXSxik/3/rWtyRJI0aM6DBNakvTnDZNEXrllVd0yimnqKqqSn369NG0adOUTCb1+uuv69hjj1VFRYWGDx+ua665pkN73nzzTZ199tnaa6+9VFpaqt12200nnHCCFi9e3OE5ttamTd544w2ddtpp6t+/v2KxmEaOHKmf//znm23/Qw89pIMOOkixWEwjRozQddddl/Vresghh0iS3n333e0+dujQobr++uvV2NioW265Jevn3uSEE07Q2LFjddttt+nAAw9USUmJhgwZossvv3yz6UpbE4/Hdfvtt+u0007rMCrx+OOP66GHHtINN9zQ4UP9pilUb7/9dqfa+tJLL2nUqFEqKSmRtDFx/Cc/+YmKi4t16aWXKpVKSZJOP/10NTQ06N577+1UfADY1TAyAWCnSaVSSiaTHe4LgkAFBQWSpIkTJ+rll1/Wj370I+29995av369Xn75Za1Zs0aSdM4552jt2rX62c9+pvvvv799StN+++23zVyJ//f//p/OOOMMnXvuuZo7d66uueYaJRIJ/eUvf9GUKVN0ySWX6J577tF3vvMd7bnnnu3ffK9YsUJ9+/bVj3/8Y/Xr109r167VXXfdpU9+8pNauHCh9tlnn222SZJee+01jR8/vv2D+oABA/Too4/qG9/4hlavXq3LL79ckvTXv/5VJ554osaNG6d7771XqVRK11xzjd5///2sXvM333xTknZ41OZzn/ucCgoK9PTTT2/2uy3tv8LC7V9GFixYoIaGBv3kJz/Rd7/7XdXU1Oh//ud/NHPmTA0ZMkTnnHPOdmO88MILWrNmjY4++ugO9996660aPny4jj766A5ta2hokCQVFRVtN/aHzZ8/XxMmTJC0cfrUWWedpeeff14PPPCAjjvuuPbHDRgwQPvuu68eeughfeUrX+nUcwDALiUEgC52xx13hJK2eCsoKGh/XHl5eXjRRRdtM9a1114bSgqXLFmyxef48P2XX355KCm8/vrrOzz2oIMOCiWF999/f/t9iUQi7NevX3jyySdv9bmTyWQYj8fDvfbaK7z44ou326YwDMNjjjkmHDx4cFhfX9/h/qlTp4bFxcXh2rVrwzAMw09+8pPhoEGDwpaWlvbHNDQ0hH369Al35FS9afuff/75MJFIhI2NjeH//d//hf369QsrKirClStXdnjcSy+9tNVYNTU14ciRIzeLvaVbIpHYZrvee++9UFK4++67h+vXr2+/Px6PhwMGDAiPP/747W5bGIbh1VdfHUpq344wDMNUKhX26tVrq22TFP7qV7/aofhhGIarVq0KJYW33XZb+NRTT4W77bZbeOihh4bLli3b4uNPP/30sKamZofjA8CuiJEJADvN3XffrZEjR3a478MrFX3iE5/QnXfeqb59++ozn/mMxowZ0+lvlrfk+OOP7/DzyJEj9fe//73DN82FhYXac889O0wHSiaTuuaaa/S///u/evPNN5VIJNp/989//nO7z9va2qq//vWv+vrXv67S0tIO35x/7nOf00033aTnn39eRxxxhF566SVNmTJFxcXF7Y+pqKjQCSecoLvuumuHt3XTtKZNDjjgAM2ZM2ez/IdtCbeyYviW9t/2RiZeeuklSRung1VVVbXfX1RUpD333FOrV6/eoTatWLFCQRCourq6/b7XX39d69ev1w9/+EMde+yxHR5/00036a677tInPvGJHYr/4bbOnTtXX//613XxxRfrqquu2uo29u/fX3V1dUomkzs0QgMAuyLOfgB2mpEjR24zgfe+++7TlVdeqV/+8pf6/ve/r/Lycp100km65pprNGDAgIyft0+fPh1+jkajKi0t7fDBfdP9m6bHSNK0adP085//XN/5znd05JFHqnfv3opEIjrnnHPU0tKy3edds2aNksmkfvazn+lnP/vZFh+zevVqrVu3Tul0eovb2Nnt3vSBv7CwUDU1NZ1e3aq5uVlr1qzRAQccsNnvtrf/tmT+/PkqKirSKaecstnvVqxYoTFjxkiSzj//fLW2tur2229XOp3WSSedpGHDhumnP/2pJKmlpUVFRUXtU+IktU9t++QnP7lZu1599VXtscce2nvvvTvV1uLiYj388MM64ogjNsuh+aji4mKFYajW1laVl5fv8PMAwK6EzgSAnFFdXa3Zs2dr9uzZWrp0qf74xz/q0ksvVV1dnR555JGd3p7//d//1Zlnnqmrrrqqw/2rV6/eoSVge/furYKCAk2cOFHnn3/+Fh8zYsQIFRcXKwgCrVy5crPfb+m+bcnkA/+HPfTQQ0qlUjrqqKMyjvFh8+fPV3V19WYdtxdeeEFvv/22vv/970uSpk+frpEjR+ryyy/XTTfdpFQqpZ/85Cftj6+urlY8Hldzc3P7ErebRoo+3MGQpEWLFmnBggW6+uqrO93Wgw8+WJdffrmOP/54TZ8+XbNmzdrq49euXatYLEZHAkCPRmcCQE4aOnSopk6dqr/+9a/629/+1n5/LBaTpB0aGchWEATtz7fJQw89pOXLl2vPPffcbptKS0t19NFHa+HChRo9erSi0ehWn+sTn/iE7r//fl177bXtH7wbGxv1pz/9ybU527V06VJdcsklqqqq0rnnnmuJOX/+fNXX12v9+vXtHbBUKqXvfOc7Gj58uE477TRJ0uDBg3XmmWfqC1/4giTp2Wef7dBJ2FTf4q233tLo0aMlfbBi0+LFi/WpT31K0sapad/4xjc0YsQITZ06tVNtfemll/TFL35RxxxzjG677TadffbZGjx48FY7gm+//XanaqQAwK6IzgSAnebVV1/dbDUgSdpjjz0UjUZ19NFH67TTTtO+++6riooKvfTSS3rkkUc61BXYNP3mxhtv1KRJk1RUVKR99tmnS9p7/PHH684779S+++6r0aNHa8GCBbr22ms1ePDgDo/bWpsqKip044036rDDDtPhhx+ur3/96xo+fLgaGxv15ptv6k9/+pMef/xxSWqf9//Zz35W3/zmN5VKpXT11VerrKxMa9eutW/bpn2RTCZVV1enZ555RnfccYcKCgr0wAMPWGp2LFmyRGvWrNHQoUN1yimn6Jvf/KZaW1v105/+VAsWLNCTTz7ZoYN10EEH6eabb9a8efM2+7Z/00jJ888/396ZGDVqlMaMGaMrr7xSNTU1qqqq0vXXX6/XXntNf/3rX7dY/yEIAh155JGbVV2vra1VbW1t+7Srs846S++9956+8Y1vaMCAAfriF7/Y4fHpdFovvviiJk+enO3LBAD5rbszwAHs+ra1GpD+s3pOa2treN5554WjR48OKysrw5KSknCfffYJL7/88rC5ublDvOnTp4eDBg0KI5FIKCl84okntrma06pVqzr8/aRJk8KysrLN2nnkkUeG+++/f/vP69atCydPnhz2798/LC0tDQ877LDwmWee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XX/99ZvF3VZbVq1apQEDBuiqq65qf/wLL7ygaDSqxx57bKttXbZsmdasWaODDjpIkrR+/XqdcMIJGj9+vGpra7e5nQCA3EdnAgC248Ybb9S4ceP01a9+VbW1taqtrdWQIUO2+Ni77rpL1dXVevHFF3XBBRfo61//uk455RSNHz9eL7/8so455hhNnDhRGzZskCR973vf0x133KE5c+boH//4hy6++GKdccYZeuqppzrVxrvuuktlZWV64YUXdM0112jmzJmaO3du+++/9a1v6YknntADDzygxx57TE8++aQWLFjQIca22tKvXz/9z//8j2bMmKH58+erqalJZ5xxhqZMmaIJEyZstV2LFi1SVVWVRowYocWLF+vjH/+4Bg4cqCeffFIDBw7s1DYCAHJQCADYriOPPDK88MILt3nfkUceGR522GHtPyeTybCsrCycOHFi+321tbWhpPC5554Lm5qawuLi4nDevHkd4k6ePDn88pe/vMNt+ejzhmEYfvzjHw+/853vhGEYho2NjWE0Gg3vvffe9t+vWbMmLCkpaY+zo22ZMmVKuPfee4enn356OGrUqLClpWWr7QzDMJw5c2Z4xBFHhL/+9a/DXr16hb/4xS+2+XgAQH4hARsAjEaPHt3+/4KCAvXt21cHHHBA+301NTWSpLq6Or322mtqbW3VZz/72Q4x4vF4p3MMPvy8kjRw4EDV1dVJkt566y3F43GNGzeu/fd9+vTRPvvs0/7zjrbluuuu06hRo/Tb3/5W8+fPV3Fx8TbbtWjRIi1evFhTp07VQw89RCI2AOxi6EwAgNFHV1kKgqDDfUEQSJLS6bTS6bQk6aGHHtJuu+3W4e9isVjWz7spfhiG2/37HW3L22+/rRUrViidTuvdd9/drBPzUYsWLdIXv/hF/frXv9b69et3ZFMAAHmEzgQA7IBoNKpUKmWNud9++ykWi2np0qU68sgjrbE/bM8991RRUZGef/55DR06VJK0bt06/fvf/25/3h1pSzwe1+mnn65TTz1V++67ryZPnqzFixe3j7Z8VGNjo5YsWaIpU6bo0EMP1Ze//GXNmzdP+++/f9dsKABgp6MzAQA7YPjw4XrhhRf0zjvvqLy8XH369Mk6ZkVFhS655BJdfPHFSqfTOuyww9TQ0KB58+apvLxckyZNMrRcKi8v1+TJk/Wtb31Lffv2VU1NjS677DJFIh+swbEjbbnssstUX1+vn/70pyovL9ef//xnTZ48Wf/3f/+3xeddtGiRCgoKtN9+++nggw/WP/7xD51wwgl68cUXVV1dbdk2AED3ojMBADvgkksu0aRJk7TffvuppaVFS5YsscT94Q9/qP79+2vWrFl6++231atXL33sYx/Td7/7XUv8Ta699lo1NTXpC1/4gioqKvTNb35T9fX1O9yWJ598UrNnz9YTTzyhyspKSdKvfvUrjR49WnPmzNHXv/71zZ7z73//u/bdd9/2aVJXX321/vnPf+rkk0/WX/7yF0WjUes2AgB2viDckcm0AAAAAPAR1JkAAAAAkBE6EwAAAAAyQmcCAAAAQEboTAAAAADICJ0JAAAAABmhMwEAAAAgI3QmAAAAAGSEzgQAAACAjNCZAAAAAJAROhMAAAAAMkJnAgAAAEBG/j/ahQqQKcEgjwAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 1000x600 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAxMAAAIqCAYAAABfWBeBAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAABpw0lEQVR4nO3deZiT1d3/8c+dzMY2KAwMIIuoFVHEZXABQaWtKFa02lqsyqJoRURExCraCiKK4lK0KIq1Ln1ceFq11p+o0AqoRZS1Yu1jVbCDMjiCZTaYJJOc3x+UqXEGmEm+Ye5M3q/rynUxN5mTk0nuJCfnfM7Xc845AQAAAEAjBZq6AwAAAADSE4MJAAAAAAlhMAEAAAAgIQwmAAAAACSEwQQAAACAhDCYAAAAAJAQBhMAAAAAEsJgAgAAAEBCGEwAAAAASAiDCQAAAAAJYTABANinPv30U7Vq1Uonn3yynHNN3R0AQBIYTAAA9hnnnC699FJde+21qqqq0pw5c5q6SwCAJHiOr4UAAPvI/fffr5dfflkLFy7Uhg0bdPLJJ+utt97SQQcd1NRdAwAkgMEEAAAAgISwzAkAAABAQhhMAAAAAEgIgwkAKffEE0/I87zdXpYsWdLgtpYtW6Zp06Zp27Zt9d7GZ599Ztr3ZPpkYdq0afI8r8HXf//993XJJZeoZ8+eysvLU+vWrXXsscdq1qxZ+vrrr2uv9+3HJC8vT506ddLgwYM1c+ZMlZaWxrW7p8dw8uTJe+3XggUL4n4nGAyqR48eGj9+vMrLyxv+B5E0ffp0HX744YrFYnHHy8vLNXnyZHXr1k15eXk6/vjj9c477zSqbUkqKytTIBDQ7Nmzd3udxx57TAcccICqqqoa3T4ANCdZTd0BAJnj8ccf12GHHVbn+OGHH97gNpYtW6Zbb71Vo0eP1n777Vd7/Ac/+IHeeecdde7c2aKrjbK7Pu1rjz76qMaNG6devXrp+uuv1+GHH65IJKKVK1fq4Ycf1jvvvKMXX3wx7nd2PSaRSESlpaV6++23ddddd+mee+7R/Pnz9f3vf7/e639Tly5d9tq31atXS5Kef/55denSRdXV1fr973+vBx98UJWVlXriiScadB83bdqkWbNm6YknnlAg8N/vw7Zs2aLBgwcrLy9Ps2fPVsuWLfWLX/xCZ511lj755BPtv//+DWpfklauXCnnnI477rjdXmfUqFG66667NGvWLN16660NbhsAmhsGEwD2mT59+qhfv34pabtDhw7q0KFDStpOB++8846uvPJKnXbaafrjH/+o3Nzc2v877bTTdN111+m1116r83vffkx+9KMf6dprr9XAgQN13nnn6eOPP1ZhYeFur99Qq1evVsuWLfXDH/6wdhBw6qmnavHixXr55Zcb3M7999+v/fbbT+edd17c8dGjR8s5p6VLl6ply5aSpIKCAh1//PF66aWXNHr06AbfxsqVK5WVlaVjjz12t9fJysrSFVdcodtuu0033HBD7W0CQKZhmRMA3/jqq6/0s5/9TN26dVNubq46dOigk046SX/+858l7Vzyc/3110uSevbsGbdMqr5lTruWCL3//vs6//zz1bZtW7Vr106TJk1STU2NPvroI51xxhlq06aNDjzwQM2aNSuuP5988okuueQSfec731HLli11wAEHaNiwYVq3bl3cbeyuT7t8/PHHuvDCC9WxY0fl5uaqd+/eevDBB+vc/1deeUVHH320cnNz1bNnT91zzz0N/tvdcccd8jxP8+bNixtI7JKTk6Ozzz67QW11795d9957ryoqKvTII480uA97smrVKh155JFxswmSlJ+f3+ClQuFwWI899pguvPDCuHbeeOMNvfLKK7rvvvviPtTv2m52/fr1jerrihUr1KdPH7Vo0ULSztoYv/rVr5SXl6cbb7xR0WhUknTRRRepvLxczz33XKPaB4DmhJkJAPtMNBpVTU1N3LFd6+clacSIEVq9erVuv/12HXroodq2bZtWr16trVu3SpIuu+wyff311/r1r3+tF154oXZJ0+GHH77HrMRPfvITXXzxxbriiiu0aNEizZo1S5FIRH/+8581btw4TZ48Wc8884xuuOEGHXLIIbXfem/atEnt27fXnXfeqQ4dOujrr7/Wk08+qRNOOEFr1qxRr1699tgnSfrwww81YMCA2g/onTp10uuvv64JEyZoy5Ytmjp1qiTpL3/5i8455xz1799fzz33nKLRqGbNmqUvv/yyQX/XN954Q0VFRerWrVsjHpHdO/PMMxUMBvXmm2/Wua1vP4ZZWXt+K9m6dauKi4t1xhlnxB3/6quv9MEHH+xxOdE3vfvuu9q6dasGDx4cd3zevHk68MADNXjw4Li+7cpiZGdnN6j9XVauXKkhQ4ZI2rl8avTo0Vq+fLlefPFFDR06tPZ6nTp10mGHHaZXXnlFl156aaNuAwCaDQcAKfb44487SfVegsFg7fVat27tJk6cuMe27r77bifJbdiwod7b+ObxqVOnOknu3nvvjbvu0Ucf7SS5F154ofZYJBJxHTp0cOedd95ub7umpsaFw2H3ne98x1177bV77ZNzzp1++umua9eurqysLO74+PHjXV5envv666+dc86dcMIJrkuXLm7Hjh211ykvL3ft2rVze3up3rx5s5PkLrjggj1e75t2/b1WrFix2+sUFha63r17x12/vkskEtnjbS1cuNBJcg888ICLRCKusrLSLV++3A0YMMBlZWW5N954o0F9vuuuu5wkt3nz5tpj0WjU7bfffrvtmyT3u9/9rkHtO+fcV1995SS5Rx991C1dutQdcMAB7qSTTnIbN26s9/oXXXSRKywsbHD7ANDcsMwJwD7z1FNPacWKFXGXd999t/b/jz/+eD3xxBOaMWOGli9frkgkYnK7Z511VtzPvXv3lud5cd8yZ2Vl6ZBDDtG//vWv2mM1NTW64447dPjhhysnJ0dZWVnKycnRxx9/rH/84x97vd3q6mr95S9/0bnnnquWLVuqpqam9nLmmWequrpay5cvV1VVlVasWKHzzjtPeXl5tb/fpk0bDRs2zOAvkBhXT03T+h7Dvc1MrFq1SpI0YcIEZWdnq3Xr1jrxxBMVDof1+uuv15lp2J1NmzbJ8zwVFBTUHvvoo4+0bds23XbbbXX6NWrUKEk7n1cNtWLFCknSokWL9L3vfU8XXnihlixZoq5du9Z7/Y4dO6q0tLTObA0AZAqWOQHYZ3r37r3H8O78+fM1Y8YM/eY3v9Evf/lLtW7dWueee65mzZqlTp06JXy77dq1i/s5JydHLVu2jPvgvuv4N7cpnTRpkh588EHdcMMNOuWUU7T//vsrEAjosssu044dO/Z6u1u3blVNTY1+/etf69e//nW919myZYv+/e9/KxaL1XsfG3K/CwoK1LJlS23YsGGv122oqqoqbd26VUceeWTc8b09hvVZvXq18vLy9Oabb8rzPOXk5OiAAw5Q+/bt61z3qquuUnV1tR577DHFYjGde+656tGjhx544AHt2LFD2dnZtcviJNUubzvhhBPq9OuDDz7QwQcfrEMPPbTBfV25cqXy8vK0YMECnXzyyXVyNN+Wl5cn55yqq6vVunXrBt8OADQXDCYA+EZBQYFmz56t2bNnq7i4WH/605904403qrS0tN6diFLtf/7nfzRy5Ejdcccdcce3bNnSoC1g999/fwWDQY0YMUJXXXVVvdfZVQ/C8zxt3ry5zv/Xd+zbgsGgvve97+nVV1/V559/vttv0RvjlVdeUTQa1amnnpp0W6tXr1bfvn0blI2YMmWKevfuralTp2rOnDmKRqP61a9+JWnn8yMcDquqqkqtWrWSpNrZq28OMCRp7dq1WrVqle66665G9XXlypU65phjNHXqVJ111lmaMmWKZs6cudvrf/3118rNzWUgASBjscwJgC91795d48eP12mnnVZbo0BS7U5FDZkZSJbneXV2RnrllVf0xRdfxB3bXZ9atmypwYMHa82aNerbt6/69etX59K+fXu1atVKxx9/vF544QVVV1fX/n5FRUWDt02dMmWKnHO6/PLLFQ6H6/x/JBJpcFvFxcWaPHmy2rZtqyuuuKJBv7M7ZWVlWr9+vYqKihp0/a5du2rkyJE6++yztXDhQj333HO1A4Vd9S0+/fTT2uvv2rHpmzts1dTUaMKECerZs6fGjx/fqP6uWLFCRUVFOv300/Xoo4/qzjvvrHfnrV3Wr1/fqDopANDcMDMBYJ/54IMP6l1bfvDBBysnJ0eDBw/WhRdeqMMOO0xt2rTRihUr9Nprr8XVFNi17Ob+++/XqFGjlJ2drV69eqWkv2eddZaeeOIJHXbYYerbt69WrVqlu+++u843/7vrU5s2bXT//fdr4MCBGjRokK688kodeOCBqqio0CeffKKXX35Zb7zxhiTptttu0xlnnFFbEyIajequu+5Sq1at4ipX707//v01d+5cjRs3TkVFRbryyit1xBFHKBKJaM2aNZo3b5769OlTJ4Ox6zGpqalRaWmp3nrrLT3++OMKBoN68cUXk67dsXr1ajnnGjyYkKSjjz5aDz30kJYtWxb3jf+uWZLly5erb9++knbWvSgqKtKMGTNUWFiotm3b6t5779WHH36ov/zlL/XWf/A8T6ecckqdyuslJSUqKSmp7evo0aP1+eefa8KECerUqZN+9KMfxV0/Fovpvffe05gxYxp83wCg2Wna/DeATLCnnYD0n51zqqur3dixY13fvn1dfn6+a9GihevVq5ebOnWqq6qqimtvypQprkuXLi4QCDhJbvHixXvczemrr76K+/1Ro0a5Vq1a1ennKaec4o444ojan//973+7MWPGuI4dO7qWLVu6gQMHurfeesudcsop7pRTTtlrn3bZsGGDu/TSS90BBxzgsrOzXYcOHdyAAQPcjBkz4tr405/+5Pr27etycnJc9+7d3Z133ll7Hxpq7dq1btSoUa579+4uJyfHtWrVyh1zzDHulltucaWlpbXX+/ZjkpOT4zp27OhOOeUUd8cdd8Rd95vX39PuT/W55557nCS3evXqBl3/3XffdQcccIA7//zz3RVXXFHn/wcNGuTOPPPMuGOfffaZO/30013Lli1du3bt3EUXXVTvzlrOOVdRUbHbna9eeuklJ8m9//77ccd/9rOfuby8PPfmm2/GHf/LX/7iJLlVq1Y16L4BQHPkOVfPdh0AAOxjxcXFGjhwoJ566in16tVLvXr10rp169SjR4/a6zz//PMaPny4/vWvf+mAAw5o9G0sWLBAZ511lv72t7/VCZc31ogRI7R+/Xr99a9/TaodAEhnDCYAAE2uoqJCJ510kq655praZUPjxo1TJBLRo48+Wns955wGDBigoqIizZkzp9G3c/311+uLL77QM888k1R/P/30U/Xu3VtvvPGGBg4cmFRbAJDOGEwAANLKBx98ULvTVyDQNPuILF68WB9//LF+9rOfNcntA4BfMJgAAAAAkBC2hgUAAACQkGYzmJg5c6Y8z9PEiRObuisAAADAPvXmm29q2LBh6tKlizzP0x//+Me9/s7SpUtVVFSkvLw8HXTQQXr44YcbfbvNYjCxYsUKzZs3r3bfcQAAACCTVFVV6aijjmrw5hQbNmzQmWeeqUGDBmnNmjW66aabNGHCBD3//PONut20L1pXWVmpiy66SI8++qhmzJjR1N0BAAAA9rmhQ4dq6NChDb7+ww8/rO7du2v27NmSpN69e2vlypW655576hTp3JO0H0xcddVV+sEPfqDvf//7ex1MhEIhhUKh2p9jsZi+/vprtW/fXp7npbqrAAAAaCTnnCoqKtSlS5cm28FtT6qrqxUOh1PStnOuzmfU3Nxc5ebmJt32O++8oyFDhsQdO/300/XYY48pEokoOzu7Qe2k9WDiueee0+rVq7VixYoGXX/mzJm69dZbU9wrAAAAWNu4caO6du3a1N2IU11drZ49WmtzaTQl7bdu3VqVlZVx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jR8/Xi+88ILeeOMN9ezZM+7/OQ9Sb2+PQX04D1LPOadQKMQ5gIRl5DKnSZMmacSIEerXr5/69++vefPmqbi4WGPHjm3qrmWEyZMna9iwYerevbtKS0s1Y8YMlZeXa9SoUU3dtWarsrJSn3zySe3PGzZs0Nq1a9WuXTt1795dEydO1B133KHvfOc7+s53vqM77rhDLVu21IUXXtiEvW5e9vQYtGvXTtOmTdOPfvQjde7cWZ999pluuukmFRQU6Nxzz23CXjcfV111lZ555hm99NJLatOmTe23r23btlWLFi3keR7nQYrt7TGorKzkPEixm266SUOHDlW3bt1UUVGh5557TkuWLNFrr73GOYDENdk+Uk3swQcfdD169HA5OTnu2GOPjduaDqk1fPhw17lzZ5edne26dOnizjvvPPf3v/+9qbvVrC1evNhJqnMZNWqUc27ntphTp051nTp1crm5ue7kk09269ata9pONzN7egy2b9/uhgwZ4jp06OCys7Nd9+7d3ahRo1xxcXFTd7vZqO9vL8k9/vjjtdfhPEitvT0GnAepd+mll9Z+9unQoYP73ve+5xYuXFj7/5wDSITnnHP7cvACAAAAoHnIuMwEAAAAABsMJgAAAAAkhMEEAAAAgIQwmAAAAACQEAYTAAAAABLCYAIAAABAQhhMAAAAAEgIgwkAAAAACWEwAQAJOvXUUzVx4sS0vd191f/rrrtOw4YNS/ntAAD2vaym7gAApINTTz1VRx99tGbPnl177IUXXlB2dvY+70tT3W6i1q5dqwEDBjR1NwAAKcDMBAAkqF27dmrTpk3G3G6i/va3v+mYY45p6m4AAFKAwQQA7MXo0aO1dOlS3X///fI8T57n6bPPPquzTOjUU0/V1VdfrYkTJ2r//fdXYWGh5s2bp6qqKl1yySVq06aNDj74YL366qu1v+Oc06xZs3TQQQepRYsWOuqoo/SHP/xhj/2p73YnTJign//852rXrp06deqkadOmxf1OVVWVRo4cqdatW6tz5866995767S7p7589dVX6tSpk+64447a67/77rvKycnRwoULd9vXjRs3auvWrTr66KMlSdu2bdOwYcM0YMAAlZSU7PF+AgD8j8EEAOzF/fffr/79++vyyy9XSUmJSkpK1K1bt3qv++STT6qgoEDvvfeerr76al155ZU6//zzNWDAAK1evVqnn366RowYoe3bt0uSfvGLX+jxxx/X3Llz9fe//13XXnutLr74Yi1durRRfXzyySfVqlUrvfvuu5o1a5amT5+uRYsW1f7/9ddfr8WLF+vFF1/UwoULtWTJEq1atSqujT31pUOHDvrtb3+radOmaeXKlaqsrNTFF1+scePGaciQIbvt19q1a9W2bVv17NlT69at03HHHafOnTtryZIl6ty5c6PuIwDAhxwAYK9OOeUUd8011+zx2CmnnOIGDhxY+3NNTY1r1aqVGzFiRO2xkpISJ8m98847rrKy0uXl5blly5bFtTtmzBj305/+tMF9+fbtOufccccd52644QbnnHMVFRUuJyfHPffcc7X/v3XrVteiRYvadhral3HjxrlDDz3UXXTRRa5Pnz5ux44du+2nc85Nnz7dnXzyye7pp592++23n3v44Yf3eH0AQHohgA0Ahvr27Vv772AwqPbt2+vII4+sPVZYWChJKi0t1Ycffqjq6mqddtppcW2Ew+FGZwy+ebuS1LlzZ5WWlkqSPv30U4XDYfXv37/2/9u1a6devXrV/tzQvtxzzz3q06eP/vd//1crV65UXl7eHvu1du1arVu3TuPHj9crr7xCEBsAmhkGEwBg6Nu7LHmeF3fM8zxJUiwWUywWkyS98sorOuCAA+J+Lzc3N+nb3dW+c26vv9/Qvqxfv16bNm1SLBbTv/71rzqDmG9bu3atfvSjH+npp5/Wtm3bGnJXAABphMEEADRATk6OotGoaZuHH364cnNzVVxcrFNOOcW07W865JBDlJ2dreXLl6t79+6SpH//+9/65z//WXu7DelLOBzWRRddpOHDh+uwww7TmDFjtG7dutrZlm+rqKjQhg0bNG7cOJ100kn66U9/qmXLlumII45IzR0FAOxzDCYAoAEOPPBAvfvuu/rss8/UunVrtWvXLuk227Rpo8mTJ+vaa69VLBbTwIEDVV5ermXLlql169YaNWqUQc+l1q1ba8yYMbr++uvVvn17FRYW6uabb1Yg8N89OBrSl5tvvlllZWV64IEH1Lp1a7366qsaM2aM/t//+3/13u7atWsVDAZ1+OGH65hjjtHf//53DRs2TO+9954KCgpM7hsAoGkxmACABpg8ebJGjRqlww8/XDt27NCGDRtM2r3tttvUsWNHzZw5U+vXr9d+++2nY489VjfddJNJ+7vcfffdqqys1Nlnn602bdrouuuuU1lZWYP7smTJEs2ePVuLFy9Wfn6+JOl3v/ud+vbtq7lz5+rKK6+sc5t/+9vfdNhhh9Uuk7rrrrv0j3/8Q+edd57+/Oc/Kycnx/Q+AgD2Pc81ZDEtAAAAAHwLdSYAAAAAJITBBAAAAICEMJgAAAAAkBAGEwAAAAASwmACAAAAQEIYTAAAAABICIMJAAAAAAlhMAEAAAAgIQwmAAAAACSEwQQAAACAhDCYAAAAAJAQBhMAAAAAEvL/Aa7yB4wGa6C5AAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 1000x600 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "\n",
    "K = 32  # number of temporal samples\n",
    "N = 10000  # number of sample functions\n",
    "bins = 100  # number of bins for the histogram\n",
    "\n",
    "# draw sample functions from a random process\n",
    "np.random.seed(2)\n",
    "x = np.random.normal(size=(N, K))\n",
    "x += np.tile(np.cos(2 * np.pi / K * np.arange(K)), [N, 1])\n",
    "\n",
    "# compute the histogram\n",
    "px = np.zeros((bins, K))\n",
    "for k in range(K):\n",
    "    px[:, k], edges = np.histogram(x[:, k], bins=bins, range=(-4, 4), density=True)\n",
    "\n",
    "# compute the CDF\n",
    "Px = np.cumsum(px, axis=0) * 8 / bins\n",
    "\n",
    "# plot the PDF\n",
    "plt.figure(figsize=(10, 6))\n",
    "plt.pcolormesh(np.arange(K + 1), edges, px)\n",
    "plt.title(r\"Estimated PDF $\\hat{p}_x(\\theta, k)$\")\n",
    "plt.xlabel(r\"time index $k$\")\n",
    "plt.ylabel(r\"amplitude $\\theta$\")\n",
    "plt.colorbar()\n",
    "plt.autoscale(tight=True)\n",
    "\n",
    "# plot the CDF\n",
    "plt.figure(figsize=(10, 6))\n",
    "plt.pcolormesh(np.arange(K + 1), edges, Px, vmin=0, vmax=1)\n",
    "plt.title(r\"Estimated CDF $\\hat{P}_x(\\theta, k)$\")\n",
    "plt.xlabel(r\"time index $k$\")\n",
    "plt.ylabel(r\"amplitude $\\theta$\")\n",
    "plt.colorbar()\n",
    "plt.autoscale(tight=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Exercise**\n",
    "\n",
    "* Change the number of sample functions `N` or/and the number of `bins` and rerun the examples. What changes? Why?\n",
    "\n",
    "Solution: In numerical simulations of random processes only a finite number of sample functions and temporal samples can be considered. This holds also for the number of intervals (bins) used for the histogram. As a result, numerical approximations of the CDF/PDF will be subject to statistical uncertainties that typically will become smaller if the number of sample functions `N` is increased."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Bivariate Probability Density Function\n",
    "\n",
    "The bivariate or joint PDF $p_{xy}(\\theta_x, \\theta_y, k_x, k_y)$ of two continuous-amplitude real-valued random signals $x[k]$ and $y[k]$ is defined as\n",
    "\n",
    "\\begin{equation}\n",
    "p_{xy}(\\theta_x, \\theta_y, k_x, k_y) := \\frac{\\partial^2}{\\partial \\theta_x \\partial \\theta_y} P_{xy}(\\theta_x, \\theta_y, k_x, k_y).\n",
    "\\end{equation}\n",
    "\n",
    "This constitutes essentially the generalization of the univariate PDF. The bivariate PDF quantifies the joint probability that $x[k]$ takes the value $\\theta_x$ and that $y[k]$ takes the value $\\theta_y$ for the entire ensemble of sample functions. Analogous to the univariate case, the bivariate CDF is given by integration\n",
    "\n",
    "\\begin{equation}\n",
    "P_{xy}(\\theta_x, \\theta_y, k_x, k_y) = \\int\\limits_{-\\infty}^{\\theta_x} \\int\\limits_{-\\infty}^{\\theta_y} p_{xy}(\\alpha, \\beta, k_x, k_y) \\, \\mathrm{d}\\alpha \\mathrm{d}\\beta.\n",
    "\\end{equation}\n",
    "\n",
    "Due to the properties of the bivariate CDF and its definition the bivariate PDF shows the following properties\n",
    "\n",
    "\\begin{equation}\n",
    "p_{xy}(\\theta_x, \\theta_y, k_x, k_y) \\geq 0\n",
    "\\end{equation}\n",
    "\n",
    "and\n",
    "\n",
    "\\begin{equation}\n",
    "\\iint_{-\\infty}^{\\infty} p_{xy}(\\theta_x, \\theta_y, k_x, k_y) \\, \\mathrm{d}\\theta_x \\mathrm{d}\\theta_y = 1.\n",
    "\\end{equation}\n",
    "\n",
    "For the special case of considering only one signal but at different times, the bivariate PDF \n",
    "\n",
    "\\begin{equation}\n",
    "p_{xx}(\\theta_1, \\theta_2, k_1, k_2) := \\frac{\\partial^2}{\\partial \\theta_1 \\partial \\theta_2} P_{xx}(\\theta_1, \\theta_2, k_1, k_2)\n",
    "\\end{equation}\n",
    "\n",
    "describes the probability that the random signal $x[k]$ takes the values $\\theta_1$ at time instance $k_1$ and $\\theta_2$ at time instance $k_2$. Hence, $p_{xx}(\\theta_1, \\theta_2, k_1, k_2)$ provides insights into the temporal dependencies of the amplitudes of the random signal $x[k]$."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "nbsphinx": "hidden"
   },
   "source": [
    "This notebook is provided as [Open Educational Resource](https://en.wikipedia.org/wiki/Open_educational_resources). Feel free to use the notebook for your own purposes. The text is licensed under [Creative Commons Attribution 4.0](https://creativecommons.org/licenses/by/4.0/), the code of the IPython examples under the [MIT license](https://opensource.org/licenses/MIT). Please attribute the work as follows: *Sascha Spors, Digital Signal Processing - Lecture notes featuring computational examples*."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.13"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
